package com.kaifamiao.www.demo.do0804;

import java.util.Scanner;

public class identifyUtil {
    /**
     * 是否符合标识符命名规则
     *
     * @param str
     * @return
     */
    Scanner sc = new Scanner(System.in);

    public boolean isIdentify() {
        System.out.println("请输入创建的标识符");
        String identify = sc.next();
        char ch = identify.charAt(0);
        if (identify.length() == 1 && ch == '_') {
            System.out.println("命名不规范，请重新命名。");
            return false;
        }
        if (ch >= '0' && ch <= '9') {
            System.out.println("标识符第一位不能为数字，命名不规范，请重新命名。");
            return false;
        } else {
            for (int i = 0; i < identify.length(); i++) {
                char ch1 = identify.charAt(i);
                if ((ch1 >= 'a' && ch1 <= 'z') || (ch1 >= 'A' && ch1 <= 'Z') || (ch1 >= 0 && ch1 <= 9) || (ch1 == '_')||(ch1=='$')) {
                    System.out.println("标识符合法");
                    return true;

                }else {
                    System.out.println("命名不规范，请重新命名。");
                }
            }
            return false;
        }
    }
     /**
     * 是否是 使用骆驼命名规则 的标识符
     * 首字母小写
     * 多个单词使用首字母大写的方式拼接(如果是使用 _ 连接则不符合要求)
     * @param
     * @return
     *
     * girl_friend false
     * Girl    false
     *
     */
    public boolean isCamel(){
        System.out.println("请输入判断的标识符");
        String identify = sc.next();
        char ch = identify.charAt(0);
        if(ch >='A'&&ch<='Z'){
            System.out.println("命名不符合驼峰命名法");
        }else{
            for(int i = 0;i<identify.length();i++){
                char ch1 = identify.charAt(i);
                if(ch1 =='_'){
                    System.out.println("命名不符合驼峰命名法");
                }else{
                    System.out.println("命名符合驼峰命名法");
                }
            }
        }
        return false;
    }


    /**
     * 是否是 使用帕斯卡命名规则 的标识符
     *      首字母大写
     *      多个单词使用首字母大写的方式拼接(如果是使用 _ 连接则不符合要求)
     * @param
     * @return
     *
     * GirlFriend true
     * Girl_Friend  false
     */
    public boolean isPascal(){
        System.out.println("请输入判断的标识符");
        String identify = sc.next();
        char ch = identify.charAt(0);
        if(ch >='A'&&ch<='Z'){
            for(int i = 0;i<identify.length();i++){
                char ch1 = identify.charAt(i);
                if(!(ch1 >='a'&&ch1<='z')){
                    System.out.println("");
                }else{
                    System.out.println("命名不符合帕斯卡命名法");
                }
            }
        }
        return false;
    }

    /**
     * 将 标识符 转换为 骆驼命名规则的标识符
     * @param str  girl_friend
     * @return  girlFriend
     */
    public String translateCamelWords(String str){
        return null;
    }

    /**
     * 将 标识符 转换为 帕斯卡命名规则的标识符
     * @param str  girl_friend
     * @return  GirlFriend
     */
    public String translatePascalWords(String str){
        return null;
    }

}
